Algebraic Techniques in Software Verification : Challenges and Opportunities
نویسندگان
چکیده
One of the main application areas and driving forces behind the development of Satisfiability Modulo Theory (SMT) solvers is software verification. The requirements of software verification are somewhat different to other applications of automated reasoning, posing a number of challenges but also providing some interesting opportunities. This paper brings together and summarises the algebras and structures of interest, along with some of the problems that are characteristic of software verification. It is hoped that this will allow computer algebra researchers to assess the applicability of their techniques to this challenging, but rewarding domain. Software verification is the prototypical application domain for Satisfiability Modulo Theory (SMT) solvers. There are many aspects of the two research fields that show a significant degree of co-evolution. For example, the central role of theories (and the theories that are available – for example bit-vectors and arrays) can be seen as a formalisation of the domain specific decision procedures that were used in early verification systems [1]. Universal quantification is challenging for most SMT solver algorithms, leading to poor performance and thus many software verification systems avoid generating quantifiers. Likewise the importance of model generation1 is in part driven but the utility of these models for providing execution or error traces in verification systems. The coevolution can also be seen in the SMT-LIB benchmarks which feature many benchmark collections generated by verification tools. This paper aims to highlight some of the requirements and ‘evolutionary pressures’ that software verification places on SMT solver development. It is hoped that this context will help computer algebra researchers to identify, develop and refine algorithms so that they can demonstrate impact on commercial-scale software verification problems. The topics raised are a mix between challenges that have to be overcome and opportunities in under-explored / critical areas.
منابع مشابه
Explain the lived experiences of educators of learning disorder centers from the challenges of changing face-to-face education to virtual education during the outbreak of coronavirus
Background & Purpose: The aim of this study was to explain the lived experiences of educators of learning disorder centers from the challenges of changing face-to-face education to virtual education during the outbreak of Corona virus. Method: Participants in this study were learning disorder educators working in learning disorder centers in Tehran in the academic year 1401-1400. The instru...
متن کاملPosition Paper: Opportunities and challenges for formal specification of Java programs
This paper describes the main opportunities and challenges that we see for introducing more rigorous software engineering practices, particularly those centered on specification and validation, in industrial practice. Our perspective derives from our ongoing work on formal specification and verification of Java programs.
متن کاملDecomposing Verification Around End-User Features
Practical program verification techniques must align with the software development methodologies that produce the programs. Numerous researchers have independently proposed models of program development in which modules encapsulate units of end-user functionality known as features. Such encapsulation reflects user concerns into a program’s modular structure, which in turn promises to simplify p...
متن کاملChallenges and Opportunities in Tomato Production Chain and Sustainable Standards
Tomato (Lycopersicon esculentum) is an important member of the Solanaceae family. It is mainly used as food and cash crop globally. Tomato also serves as an ornamental plant in some parts of the world. In urban areas, this crop is included in the foodscaping systems where it is grown in hanging baskets, growing pots and aquaponics for aesthetic and food purposes. Tomato production is m...
متن کاملCombining Deduction and Algebraic Constraints for Hybrid System Analysis
We show how theorem proving and methods for handling real algebraic constraints can be combined for hybrid system verification. In particular, we highlight the interaction of deductive and algebraic reasoning that is used for handling the joint discrete and continuous behaviour of hybrid systems. We illustrate proof tasks that occur when verifying scenarios with cooperative traffic agents. From...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2016